#include "CapeMario.h"

void CapeMario::GotMushroom(IMario* mario)
{
	mario->SetCoin(30);
}

void CapeMario::GotFireFlower(IMario* mario)
{
	mario->SetCoin(30);
	mario->SetState(&FireMario::GetInstance());
	std::cout << "GotFireFlower Become FireMario" << std::endl;
}

void CapeMario::GotFeather(IMario* mario)
{
	mario->SetCoin(30);
}

void CapeMario::GotMonster(IMario* mario)
{
	mario->SetCoin(-50);
	mario->SetState(&SmallMario::GetInstance());
	std::cout << "GotMonster Become SmallMario" << std::endl;
}

void CapeMario::GotFall(IMario* mario)
{
	mario->SetCoin(-100);
	mario->GotDie();
}

void CapeMario::GotCoin(IMario* mario)
{
	mario->SetCoin(4);
}
